home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / share / idl / bonobo-2.0 / Bonobo_Context.idl < prev    next >
Text File  |  2006-01-09  |  3KB  |  142 lines

  1. /*
  2.  * bonobo-context.idl: Exposes global bonobo functionality
  3.  *
  4.  * Author:
  5.  *    Michael Meeks (michael@helixcode.com)
  6.  *
  7.  * Copyright (C) 1999, 2000  Helix Code, Inc.
  8.  */
  9.  
  10. #ifndef BONOBO_CONTEXT_IDL
  11. #define BONOBO_CONTEXT_IDL
  12.  
  13. #include "Bonobo_Storage.idl"
  14. #include "Bonobo_Moniker.idl"
  15.  
  16. module Bonobo {
  17.  
  18.     interface MonikerContext : Unknown {
  19.         /**
  20.          * getObject:
  21.          * @name:
  22.          * @repoId:
  23.          *
  24.          * Create and resolve a moniker
  25.          */
  26.         Unknown getObject        (in string name,
  27.                       in string repoId);
  28.  
  29.         /**
  30.          * createFromName:
  31.          * @name: parsed name of moniker
  32.          *
  33.          * creates a moniker from a display name
  34.          */
  35.         Moniker createFromName   (in string name);
  36.  
  37.         /**
  38.          * getExtender:
  39.          * @monikerName: the name of the moniker to extend eg. 'file'
  40.          * @interface: the interface we want to resolve against
  41.          *
  42.          *  Finds an extender that can be plugged into the object
  43.          * namespace later to allow new interfaces to be exported.
  44.          * Used in implementing new monikers.
  45.          */
  46.         MonikerExtender getExtender (in string monikerPrefix,
  47.                          in string interfaceId);
  48.  
  49.         void unImplemented1 ();
  50.         void unImplemented2 ();
  51.         void unImplemented3 ();
  52.         void unImplemented4 ();
  53.         void unImplemented5 ();
  54.         void unImplemented6 ();
  55.     };
  56.  
  57.     /*
  58.      * RunningContext: a live object tracker.
  59.      *
  60.      *  This interface is aggregated with an EventSource that
  61.      * fires: 'bonobo:last_unref' when all objects are released.
  62.      */
  63.     interface RunningContext : Unknown {
  64.         /**
  65.          * addObject:
  66.          * @object: a newly created object
  67.          *
  68.          * Adds an object to be tracked.
  69.          */
  70.         void addObject    (in Object obj);
  71.  
  72.         /**
  73.          * removeObject:
  74.          * @object: an object about to be destroyed
  75.          *
  76.          * Removes an object from tracking.
  77.          */
  78.         void removeObject (in Object obj);
  79.  
  80.         /**
  81.          * addKey:
  82.          * @key: a unique key
  83.          *
  84.          * Adds a stringified reference to be tracked.
  85.          */
  86.         void addKey      (in string key);
  87.  
  88.         /**
  89.          * removeKey:
  90.          * @key: a unique key
  91.          *
  92.          * Removes a stringified reference from tracking
  93.          */
  94.         void removeKey   (in string key);
  95.  
  96.         void atExitUnref (in Object obj);
  97.  
  98.         void unImplemented1 ();
  99.         void unImplemented2 ();
  100.     };
  101.  
  102. #if 0
  103.     interface ExceptionContext : Unknown {
  104.         /**
  105.          * getText:
  106.          * @ex: an exception
  107.          *
  108.          *   translates the exception into a human
  109.          * readable string translated into the current
  110.          * locale.
  111.          */
  112.         string getText (in exception ex);
  113.     };
  114.  
  115.     interface StreamContext : Unknown {
  116.         exception NotSeekable {};
  117.  
  118.         /**
  119.          * getTemp:
  120.          * 
  121.          * creates a temporary stream
  122.          */
  123.         Stream getTemp ();
  124.  
  125.         /**
  126.          * sniffStream:
  127.          * @stream: a seekable stream
  128.          *
  129.          *  If the stream is not seekable, we return
  130.          * an exception without seeking, otherwise
  131.          * we sniff the stream, to see if it smells
  132.          * approximately like the suggested mime type.
  133.          */
  134.         boolean sniffStream (in Stream stream,
  135.                      in string mimeType)
  136.             raises (NotSeekable);
  137.     };
  138. #endif
  139. };
  140.  
  141. #endif /* BONOBO_CONTEXT_IDL */
  142.